P+ - Donkey Kong - Subroutine - 0x1f440

  1. CreateInterrupt { interrupt_id: None, action: Wait, requirement: (AnimationEnd) }
  2. PreviousInterruptAddRequirement(OnGround)
  3. CreateInterrupt { interrupt_id: None, action: Fall, requirement: (AnimationEnd) }
  4. PreviousInterruptAddRequirement(InAir)
  5. UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: RandomAccess, data_type: Int, address: 0 })] }
  6. loop Infinite times:
    1. if (OnGround)
      1. SetEdgeSlide(StayOn)
      2. SetAirGround(6)
      3. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: InAir }] }
    2. else
      1. SetEdgeSlide(Airbourne)
      2. SetAirGround(10)
      3. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: OnGround }] }
    3. LoopRest